//外部类
class A {

    public static int a;//静态成员
    public int b;//非静态成员
    private String str1;//非静态成员
    private static String str2;//静态成员
    public static void se1() {
        System.out.println("调用成功");
    }

  //静态内部类
  static  class B {

    public void dao() {
        System.out.println(a);//正常使用
        //System.out.println(b);//报错
       //System.out.println(str1);//报错
        System.out.println(str2);//正常使用
    }



      public static void se2() {
                se1();
          System.out.println("调用成功");
      }
     public void se3() {
           se2();
         System.out.println("调用成功");

    }

}
}
public class Main {
    public static void main(String[] args) {
       // A a = new A();//A.B b = new A.B();
        //b.se3();
        {
            //局部内部类
            /*class C {
                public int c;

                public void cn() {

                }
            }*/
        }

    class OuterClass {

            public void method() {
                //匿名内部类
                 new Runnable() {

                    public void run() {

                        System.out.println("Running...");

                    }

                };

            }
        }

    }
}

